package com.sky.rabc.service;

import com.sky.rabc.dto.AddNewBackUserDTO;
import com.sky.rabc.dto.BackUserLoginDTO;
import com.sky.rabc.dto.UpdateBackUserDTO;
import com.sky.rabc.vo.LoginInfoResultVO;
import org.springframework.transaction.annotation.Transactional;

public interface BackUserService {
    /**
     * 添加后台用户
     * @param addNewBackUserDTO 新增后台用户DTO类
     */
    @Transactional
    void addNew(AddNewBackUserDTO addNewBackUserDTO);

    /**
     * 登录
     * @param backUserLoginDTO 后台用户登录信息DTO
     * @return 登录信息返回结果
     */
    LoginInfoResultVO login(BackUserLoginDTO backUserLoginDTO);

    /**
     * 根据id删除User
     * @param id 用户id
     */
    @Transactional
    void delUserById(Long id);

    /**
     * 通过用户id修改用户信息
     * @param updateBackUserDTO 修改后台用户DTO
     */
    @Transactional
    void updateUserInfoById(UpdateBackUserDTO updateBackUserDTO);
}
